1. Field of the Invention
This invention relates to an access control method for drive units and the drive units using the method.
2. Description of the Related Art
Various drive units are connected to information processing equipment such as personal computers via interfaces. For example, computer system 10 shown in FIG. 7 contains floppy disk drive 24 and magneto-optic disk (MO) drive 20 in personal computer main unit 12.
Keyboard 16 and mouse 18 are connected as input devices, and display unit 14 is connected as an output device to personal computer main unit 12. MO cartridge 22 is inserted as recording media into MO drive 20.
To transfer data to or from personal computer main unit 12, a device driver program (hereinafter called a driver or device driver) controls access to drive units such as MO drive 20 via interfaces.
FIG. 8 shows an outline of the connection between personal computer main unit 12 as high-level information processing equipment and MO drive 20 as an example of the drive unit. Operating system (OS) 120 and device driver 121 for the MO drive 20 are installed and stored on the hard disk drive of personal computer main unit 12, which is a high-level device.
MO drive 20 to be accessed by personal computer main unit 12, which is a high-level device, has command processing section 201 that performs command and data transfer with personal computer main unit 12 via interface unit 200.
Command processing section 201 generally includes a command control program in firmware. It also has mechanical and optical head processing section 202. The command control program controls reading from, and writing to MO cartridge 22, which is recording media, via mechanical and optical head processing section 202, based on a command received by command processing section 201.
The driver is required for controlling access to a drive unit by using information-processing equipment as the high-level device.
Suppose that two or more different drive units are connected to the personal computer. For example, drive unit information on each drive unit is acquired by issuing a command by the device driver corresponding to the driver unit connected to each I/O bus during power-on as described in the unexamined laid open Japanese patent publication No. 5-2550. Then, drive unit access is controlled according to the drive unit information.
Recently, Windows95 and Windows NT (registered trademarks of Microsoft Corporation) have been widely used as the OSs of personal computers. Drive units such as storage units that are controlled by these OSs have various interface specifications.
These interface specifications or logical specifications are standardized. For example, there are the ATA, ATAPI, and SCSI standards. Therefore, drive units having these interfaces require general device drivers, which do not need to be prepared for each model.
If these device drivers have common specifications, fewer problems occur during execution by the OS. It is also advantageous in that two or common drivers under the OS can access more drive units.
However, value cannot be added to each drive unit. For example, a drive unit developer may develop a device by differentiating it from the drive units of other companies such as by equipping it with a superior cache function. In this case, even if the drive unit having the superior cache function is connected to a personal computer together with the driver units of other companies, the developer will naturally want the superior cache function to work effectively in the drive unit.
As stated earlier, however, when a general-purpose driver can control access to multiple drive units under an OS, the general-purpose driver can only provide general-purpose functions even if a drive unit has the above differentiated and effective function.
When only a certain drive unit out of all of the drive units connected to a personal computer has a differentiated and effective function, in the worse case, an attempt to use that function may effectively cause the system to shut down.
The technology described in the unexamined laid open Japanese patent publication No. 6-309265 makes it possible to acquire device information such as device and vendor codes by using the inquiry command defined in the ATAPI and SCSI interfaces, and select a device driver fit for the target drive unit on the basis of that information.
Even in the above case, a device driver is specified for each drive unit. Therefore, when two or more drive units share the differentiated and effective function, device drivers need to be specified for these drive units.
This causes a problem if the model is changed or a new device or vendor code is assigned at an OEM supplier; in such case, the new model or another model with a new device or vendor code will be recognized as a different drive unit.
The objective of the present invention is therefore to provide an access control method and drive units to which the method applies, such access control method, even if a drive unit having a specific differentiated function is connected together with other drive units to a high-level device, allowing the corresponding device driver to determine the drive unit having the specific differentiated function among other drive units.
The further objective of the present invention is to provide an access control method and drive units to which the method applies, such access control method allowing the system to recognize the drive units having the specific differentiated function as a group, and thereby determine the proper driver even if models are changed.
It is a feature of the present invention to allow the system to authenticate drive units by using a group code for data request commands from application programs and device drivers so that the added function is enabled for the drive unit group.
Preferably, as an example of the present invention, an access control method for drive units which are connected to the high-level device via interfaces, and in which a property indication code is set; such access control method includes the steps of:
generating a device driver start request by the driver control program when the OS starts;
sending a check command on the basis of the device driver start request;
loading the specific device driver corresponding to the specific code contained in the response from the drive unit for the check command; and
sending the corresponding command to the drive unit under the specific device driver, when a predetermined high-level command for the drive unit under the specific device driver is sent from the high-level device.
Also preferably, in the configuration, as an example of the present invention, such access control method includes the step of:
converting a predetermined high-level command into the corresponding command by using the specific device driver when the predetermined high-level command for the drive unit is sent from the high-level device.
Also preferably, an example of the present invention, an access control method for drive units which are connected to the high-level device via interfaces, and in which a property indication code is set; such access control method includes the steps of:
generating a device driver start request by the driver control program when the OS starts;
sending a check command to the drive unit on the basis of the device driver start request;
loading the group device driver corresponding to the group code contained in the response from the drive unit for the check command; and
sending the group command corresponding to a predetermined high-level command to the drive unit that includes the group code in the response when the predetermined high-level command for the drive unit is sent from the high-level device.
Also preferably, in the configuration, as an example of the present invention, such access control method includes the step of:
converting a predetermined high-level command into the corresponding group command by the group device driver when the predetermined high-level command for the drive unit is sent from the high-level device.
Also preferably, as an example of the present invention, such access control method being characterized by a configuration in which:
the check command includes at least the command number associated with the command that recognizes the specific code, and transfer data length information, and
a response from the drive unit corresponding to the check command contains the data length determined by the transfer data length information and includes the specific code in the data length.
Also preferably, as an example of the present invention, such access control method being characterized by common assignment of the group code to a group of drive units.
Other features of the present invention are clarified by the execution conditions of the invention explained using the figures given below.